<?php
/*
 * TABLA DE ASISTENCIA DIARIA
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
*/

// No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

/**
 *
 */
class TableAsistencias extends JTable {
    /**
     * Primary Key
     *
     * @var int
     */
    var $asistencia_diaria_id = null;

    /**
     * @var string
     */
    var $fecha = null;

    /**
     * @var string
     */
    var $hora_entrada = null;

    /**
     * @var string
     */
    var $hora_salida = null;

    var $actividad = null;

    var $tema = null;

    var $agente_id = null;

    var $resoluciones_cargos_id = null;

    var $actividad_id = null;

    var $emitida = null;

    /**
     * Constructor
     *
     * @param object Database connector object
     */
    function TableAsistencias(&$db) {
        parent::__construct('#__asistencia_diaria', 'asistencia_diaria_id', $db);
    }

    function validaRepetido() {
        $cant = 0;
        
        $db =& JFactory::getDBO();
        $query = "SELECT count(*) FROM #__asistencia_diaria a WHERE a.fecha = '$this->fecha' and time_format('$this->hora_entrada','%H:%i') = a.hora_entrada and time_format('$this->hora_salida','%H:%i') = a.hora_salida and resoluciones_cargos_id = $this->resoluciones_cargos_id and a.agente_id = $this->agente_id";
        $db->setQuery( $query );
        $cant = $db->loadResult();
        
        if ($cant > 0) {
            //return true;
            return $query;
        }
       if ($cant == 0) {
            //return false;
           return '';
       }
    }

    function validaSuperposicion() {
        $cant = 0;
        $db =& JFactory::getDBO();
        $query = "SELECT count(*) FROM #__asistencia_diaria a
                  WHERE a.fecha = '$this->fecha'
                    and ( ((time_format('$this->hora_entrada','%H:%i')> a.hora_entrada) or
                          (time_format('$this->hora_salida','%H:%i')> a.hora_entrada))
                    and  ((time_format('$this->hora_entrada','%H:%i')< a.hora_salida) or
                         (time_format('$this->hora_salida','%H:%i')< a.hora_salida))
                        )
                    and a.agente_id = $this->agente_id";

        $db->setQuery( $query );
        $cant = $db->loadResult();

        if ($cant > 0) {
            return $query;
        }
        if ($cant == 0) {
            return '';
        }
    }


}
?>